
// 디버그에 필요 한 헤더
#ifdef __DEBUG__
#include <stdio.h>
#include <assert.h>
#endif

// 시간 관련 함수
#ifdef __WIN32__
#include <windows.h>
#else
#include <sys/time.h>
#endif

#include <stdlib.h>

#include <SDL/SDL.h>
#include <SDL/SDL_image.h>

#include <GL/gl.h>
#include <GL/glu.h>
#include <GL/glext.h>

/*****************************************************\
|								CONDIS Brick out! Project										|
\*****************************************************/
// TODO
// 1. SDL + OpenGL 을 이용하여 화면을 띄운다.

// 시간을 구하는 함수, 운영체제에 맞게 구한다. 윈도우에서는 다른 방법으로 구한다.
long GetTimeCount()
{
	#ifdef _WIN32_
	// GetQueryPerformanceCounter();
	#else
	struct timeval tempTime;
	
	gettimeofday( &tempTime, NULL );
	
	return tempTime.tv_usec;
	#endif
}

int main(int argc, char **argv)
{
	char done = 0;
	SDL_Event event;
	SDL_Surface *screen;
	
	SDL_Init(SDL_INIT_VIDEO);
	
	screen = SDL_SetVideoMode( 800, 600, 32, SDL_OPENGL );
	
	while( !done )
	{
		glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
		
		long begin = GetTimeCount();
		while( SDL_PollEvent( &event ) )
		{
			switch( event.type )
			{
				case SDL_QUIT:
				{
					done = 1;
				}
				break;
			}
		}
		long end = GetTimeCount();
		printf("%ld\n", end - begin );
		
		SDL_GL_SwapBuffers();
	}
	
	SDL_Quit();
	return 0;
}
